package com.application.model.gobierno.caba.entities;

import java.util.Collection;

import com.application.model.xml.ConfigurationManager;

public class ManagerGobCabaColegio {
	private static final String nombreArchivo="./log/gob.caba.colegios.xml";
	

	private GobCabaColegios 	gobCabaColegios;
	
	public ManagerGobCabaColegio() {
		gobCabaColegios = new GobCabaColegios();
	}
	
	//public void agregarItem(String nameColegio, String pais, String provincia, String partido, String direccion, String zonaKey) {
	public void agregarItem(String nameColegio, String gestion, String direccion, String barrio) {
		GobCabaColegioItem colegio = getElegirColegioElement(nameColegio);
    	if(colegio==null){
    		colegio = new GobCabaColegioItem();
    		//colegio.setNombreColegio(escapeValue(nameColegio));
    		colegio.setNombre(nameColegio);
    		colegio.setPais("Argentina");
    		colegio.setProvincia("Capital Federal");
    		colegio.setPartido("Capital Federal");
    		colegio.setLocalidad(barrio);
    		colegio.setDireccion(direccion);
    		colegio.setGestion(generarGestion(gestion));   		

    		addElegirColegioElement(colegio);
    	}
		
	}

	
	private String generarGestion(String gestion) {
		String value = gestion;
		if(gestion.equalsIgnoreCase("Estatal")){
			value="Público";
		}else if(gestion.equalsIgnoreCase("Privada")){
			value="Privado";
		}
		return value;
	}

	private void addElegirColegioElement(GobCabaColegioItem colegio){
		gobCabaColegios.addElement(colegio);
	}
	private GobCabaColegioItem getElegirColegioElement(String nombreColegio){
		return gobCabaColegios.getGobCabaColegioItem(nombreColegio);
	}
	public void save() {
		ConfigurationManager<GobCabaColegios> configuration = new ConfigurationManager<GobCabaColegios>();
        try {
			configuration.write(gobCabaColegios, nombreArchivo,"iso-8859-1");
		} catch (Exception e) {			
			e.printStackTrace();
		}
	}

	public void load() {
		ConfigurationManager<GobCabaColegios> configuration = new ConfigurationManager<GobCabaColegios>();
        try {
        	gobCabaColegios = configuration.load(nombreArchivo,"utf-8");
		} catch (Exception e) {			
			e.printStackTrace();
		}
	}
	public void updateTipoEIdelogia(String nombreColegio,String tipo, String ideologia) {
		GobCabaColegioItem colegio = getElegirColegioElement(nombreColegio);
    	if(colegio!=null){
    		colegio.setTipo(tipo);
    	}
	}

	public void addNivel(String nameColegio, String nivel) {
		GobCabaColegioItem colegio = getElegirColegioElement(nameColegio);
    	if(colegio!=null){
    		colegio.addNivel(nivel);    		
    	}
	}
	public void addJornada(String nameColegio, String jornada) {
		GobCabaColegioItem colegio = getElegirColegioElement(nameColegio);
    	if(colegio!=null){
    		colegio.addJornada(jornada);    		
    	}
	}
	
	public void addInfrastructuraYDescripcion(String nameColegio, String infraestructura, String descripcion) {
		GobCabaColegioItem colegio = getElegirColegioElement(nameColegio);
    	if(colegio!=null){
    		colegio.setDescripcion(descripcion);
    	}
	}

	public void addIdioma(String nameColegio, String idioma) {
		GobCabaColegioItem colegio = getElegirColegioElement(nameColegio);
    	if(colegio!=null){
//    		colegio.addIdioma(idioma);    		
    	}
	}

	
	public Collection<GobCabaColegioItem> getValues(){
		return this.gobCabaColegios.getValues();
	}

	public void addTelefono(String nameColegio,String telefonos) {
		GobCabaColegioItem colegio = getElegirColegioElement(nameColegio);
    	if(colegio!=null){
    		colegio.setTelefono(telefonos);    		
    	}
	}

	public void addDescripcion(String nombreColegio, String descripcion) {
		GobCabaColegioItem colegio = getElegirColegioElement(nombreColegio);
    	if(colegio!=null){
    		colegio.setDescripcion(descripcion);    		
    	}
	}

	public void addEmail(String nombreColegio, String email) {
		GobCabaColegioItem colegio = getElegirColegioElement(nombreColegio);
    	if(colegio!=null){
    		colegio.setEmail(email);    		
    	}
	}

	
}
